Linux串口调试配置 |
您所在的位置:网站首页 › linux 关闭调试串口 › Linux串口调试配置 |
创建时间:2010-01-26 修改:2011-09-22 (grub2) 作者:Steven Yang E-mail:[email protected]
很多场合需要用到串口调试,本文介绍串口配置过程: (沿用惯语,我用的机器ubuntu 9.10称为开发系统[Developer],需要调试的Debian称为目标系统[Target])
首先是内核支持: 一般来说,Debian、Ubuntu等发行版的官方内核都支持,如果自己编译的内核,确保如下选项打开,下面选项可能不是一个必要的集合,但是是充分的结合: CONFIG_VT=y CONFIG_CONSOLE_TRANSLATIONS=y CONFIG_VT_CONSOLE=y CONFIG_HW_CONSOLE=y CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250_CONSOLE=y #or #CONFIG_SERIAL=y #CONFIG_SERIAL_CONSOLE=y
串口硬件测试: 怎么测试我电脑的串口是不是好的?把串口的发送端和接受端找一根导线短接,然后用串口调试工具,给串口发送数据,这时候要是同样能接受到发送的数据,就说明串口是好的 怎么测试串口线是不是好的? 可以把串口线插在串口上,用上面的方法测试,如果有问题,就用万用表测就好了
说明:1 如果有多个串口一定要注意你连接的是哪一个串口;2 串口上都有标明引脚号码,引脚2和3是期中一个是读一个是写,可以把这两个接起来进行测试。 进一步测试串口以及通讯可以使用:在developer上执行: stty ispeed 115200 ospeed 115200 -F /dev/ttyS0 echo hello > /dev/ttyS0 在target上执行: stty ispeed 115200 ospeed 115200 -F /dev/ttyS0 cat /dev/ttyS0 串口线没问题的话在target的屏幕上显示hello
Developer的minicom配置: minicom的设置也就是接口,数据率,起始位,校验位等参数 minicom需要如下配置才能输入信息 ———————————————— minicom -s 选 Serial port setup 修改 F - Hardware Flow Control 为 No Save setup as dfl
输出重定向到串口的配置: 将BIOS输出重定向到串口 这一功能需要主版支持, 请参考主板用户手册 将GRUB输出重定向到串口 GRUB1 (Edit /boot/grub/menu.lst)serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1 terminal --timeout=5 console serial grub引导过程中, 会将输出同时发送到终端屏幕和串口. grub引导过程中将在终端和连接到串口的超级终端上提示Press any keyto continue, 每秒钟提示一次, 共5次, 可修改menu.lst文件terminal行中的--timeout=10改变提示次数,在这一段时间内, 可以在终端的键盘, 或者连接到串口的超级终端中按任意键进入grub选择菜单.如果5秒内没有在终端和连接串口的超级终端上按任意键, 则grub的选择菜单将出现在console上, 如果希望默认情况下,grub选择菜单出现在串口上, 则可修改menu.lst将console serial修改为serial console. GRUB2 (Edit /etc/default/grub) [plain] view plain copy # If you change this file, run 'update-grub' afterwards to update # /boot/grub/grub.cfg. GRUB_DEFAULT=0 GRUB_TIMEOUT=1 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="console=tty0 console=ttyS0,9600n8" # Uncomment to disable graphical terminal (grub-pc only) GRUB_TERMINAL=serial GRUB_SERIAL_COMMAND="serial --speed=9600 --unit=0 --word=8 --parity=no --stop=1" # The resolution used on graphical terminal # note that you can use only modes which your graphic card supports via VBE # you can see them in real GRUB with the command `vbeinfo' #GRUB_GFXMODE=640x480 # Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux #GRUB_DISABLE_LINUX_UUID=true然后更新grub # grub-mkconfig # update-grub2 将kernel输出信息输出到串口(Edit /boot/grub/menu.lst)增加kernel引导参数如下 kernel /boot/vmlinuz-2.6.32.4-xm-1.0 root=/dev/hda1 ro console=ttyS0,115200n8 console=tty0 允许从串口登陆linux 确保/etc/securett文件中有ttyS,如果没有,增加,这样的目的是允许root在ttyS0上登陆 修改/etc/inittab文件, 增加如下内容 T0:23:respawn:/sbin/getty -L ttyS0 115200 vt100 注意:具体参数可以参考这个文件里面的例子,另外这个文件在Ubuntu下是没有的
下面列出GRUB的启动命令 =========================================================================================================== 一、菜单命令 菜单命令只能用于grub配置文件的全局配置部分,不能用在grub命令行交互界面,菜单命令在配置文件中应放在其它命令之前。 1、default //设置默认启动的菜单项 2、fallback //设置启动某菜单项失败后反回的菜单项 3、hiddenmenu //隐藏菜单界面 4、timeout //设置菜单自动启动的延时时间 5、title //开始一个菜单项 二、常规命令 常规命令可以应该于配置文件和grub命令行交互界面,可使用的常规命令有 1、bootp //通过bootp初始化网络设备 2、color //设置菜单界面的颜色 3、device //指定设备文件作为驱动器 4、dhcp //通过DHCP初始化网络设备 5、hide //隐藏某分区 6、ifconfig //手工配置网络设备 7、pager //改变内部页程序的状态 8、partnew //新建一个主分区 9、parttype //改变分区的类型 10、password 为菜单界面设置口令 11、rarp //通过RARP初始化网络设置 12、serial //设置串口设备 13、setkey //设置键盘映射 14、splashimage //设置GRUB启动时的背景图片文件 15、termainal //选择终端类型 16、tftpserver //指定TFTP服务器 17、unhide //还原某隐藏分区 三、命令行和菜单项命令 命令行和菜单项命令可应该于GRUB配置文件的菜单项设置中,也可以用在GRUB命令交互界面。 1、bolcklist //显示某文件所在分区位置(block list notation) 2、boot //启动操作系统 3、cat //显示文件内容 4、chainloader //把启动控制权软交给另外的启动引导器 5、cmp //比较两个文件 6、configfile //加载已存在的GRUB配置文件 7、debug //设置为debug模式 8、displayapm //显示APM BIOS信息 9、displaymem //显示内存配置 10、embed //嵌入Stage 1.5文件 11、find //查找包括某文件的所有设备 12、fstest //测试文件系统 13、geometry //显示某驱动器的物理信息 14、halt //停止计算机运行(软件关机) 15、help //显示GRUB的命令帮助信息 16、impsprobe //查询对称多处理器(SMP)的信息 17、initrd //加载initrd文件 18、install //安装GRUB 19、ioprobe //查询某驱动器的输入输出(I/O)端口 20、kernel //引导操作系统内核 21、lock //锁定某GRUB导菜单项,使其输入密码后才可启动 22、makeactive //激活某主分区 23、map //虚拟映射某驱动器 24、md5crypt //使用MD5加密口令 25、module //加载模块 26、modulenounzip //加载模块不进行解压 27、pause //暂停并等待按键 28、quit //退出GRUB 29、reboot //重新启动计算机 30、read //读取内存中的内容 31、root //设置GRUB的root设备 32、rootnoverify //设备GRUB的root设备但不装载文件系统 33、savedefault //保存当前的启动菜单项为默认启动 34、setup //自动安装GRUB 35、testload //从文件系统中测试读取某文件 36、testvbe //测试VESA BIOS EXTENSION 37、uppermem //强制设置主机上位内存的大小 38、vbeprobe //查询VESA BIOS EXTENSION信息
参考: http://linux.xvx.cz/2009/08/debian-with-grub2-and-serial-connection/ |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |